<!-- 
EMBA - EMBEDDED LINUX ANALYZER

Copyright 2020-2023 Siemens AG
Copyright 2020-2025 Siemens Energy AG

EMBA comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under the terms of the GNU General Public License.
See LICENSE file for usage of this software.

EMBA is licensed under GPLv3

Author(s) and contributors from the EMBA project are listed here: https://github.com/e-m-b-a/emba/blob/master/CONTRIBUTORS.md
-->

<!-- Used icons: https://github.com/CoreyGinnivan/system-uicons -->
 
<!DOCTYPE html>
<html lang="en">
<head>
  <title>EMBA firmware report</title>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="./style/style.css" type="text/css">
  <link rel="icon" type="image/png" href="./style/favicon.png">
</head>
<body>

<div id="sidenav" class="side">
  <div id="logo">
    <a class="inherit" href="./index.html"><img class="inherit" id="logoImage" src="./style/emba.svg" alt="logo"></a>
  </div>
  <div id="nav">
      <a id="embark" class="hidden" href="{{ embarkBackUrl }}">&laquo; Back to EMBArk</a> <!-- nosem -->
      <a class="backButton" href="./index.html">&laquo; Back to main</a>
      <!-- navigation start -->
      <!-- navigation end -->
      <input id="expand" class="expand_njs hidden" type="button" value="More results:" onclick="this.value=this.value=='+ Show more results'?'- Hide more results':'+ Show more results';">
      <div class="expand_area">
        <!-- etc start -->
        <!-- etc end -->
      </div>
  </div>
  <a href="TIMELINK"><div id="buttonTimeInvisible" class="rectButton"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="white" stroke-linecap="round" stroke-linejoin="round" transform="matrix(-1 0 0 1 19 2)"><circle cx="8.5" cy="8.5" r="8"/><path d="M8.5 5.5v4H5"/></g></svg></div></a>
  <div id="buttonSizer" class="rectButton buttonClose" onclick="buttonNav()"></div>
</div>
<div id="main" class="main">
  <!-- content start -->
  <!-- content end -->
</div>

<a href="https://github.com/e-m-b-a/emba" title="github.com/e-m-b-a/emba" target="_blank">
  <div id="buttonInfo" class="rectButtonVisible">
    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" transform="translate(2 2)"><g stroke="white" stroke-linecap="round" stroke-linejoin="round"><circle cx="8.5" cy="8.5" r="8"/><path d="M8.5 12.5v-4h-1"/><path d="M7.5 12.5h2"/></g><circle cx="8.5" cy="5.5" fill="white" r="1"/></g></svg>
  </div>
</a>
<div id="buttonBack" class="nonClickable rectButtonVisible"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><path d="M9.5 14.5l4-4l-4-4" fill="none" stroke="#444" stroke-linecap="round" stroke-linejoin="round"/></svg></div>
<div id="buttonForward" class="nonClickable rectButtonVisible"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><path d="M11.5 14.5l-4-4l4-4" fill="none" stroke="#444" stroke-linecap="round" stroke-linejoin="round"/></svg></div> 
<div id="buttonDown" class="rectButton" onclick="scrollDown()"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round"><path d="M14.5 6.5l-4 4l-4-4"/><path d="M14.5 10.5l-4 4l-4-4"/></g></svg></div>
<div id="buttonUp" class="rectButton" onclick="scrollUp()"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="#fff" stroke-linecap="round" stroke-linejoin="round"><path d="M6.5 14.5l4-4l4 4"/><path d="M6.5 10.5l4-4l4 4"/></g></svg></div> 

<script>
window.onload = function () {
  var buttons = document.getElementsByClassName("rectButton");
  for (let i=0; i<buttons.length; i++) {
    buttons[i].style.visibility = "visible";
  }
  var buttonDown = document.getElementById("buttonDown");
  buttonDown.classList.add('rectButtonVisible');
  buttonDown.classList.remove('rectButton');

  var buttonUp = document.getElementById("buttonUp");
  buttonUp.classList.add('rectButtonVisible');
  buttonUp.classList.remove('rectButton');
    
  var buttonSizer = document.getElementById("buttonSizer");
  buttonSizer.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="white" stroke-linecap="round" stroke-linejoin="round"><path d="M9.5 16.5v-4.978l-5-.022"/><path d="M18.5 2.5l-7 7"/><path d="M16.5 9.5l-5 .023V4.5"/><path d="M9.5 11.5l-7 7"/></g></svg>';
  if (document.getElementById("buttonTime") !== null) {
    var buttonTime = document.getElementById("buttonTime");
    buttonTime.style.bottom = "50px";
  }
  document.getElementById("expand").value = "+ Show more results";
  document.getElementById("expand").className += " expand";
  var embarkButton = document.getElementById("embark");
  if ( !(embarkButton.href.includes("embarkBackUrl")) ) {
    embarkButton.classList.remove('hidden');
    document.getElementById("logoImage").src = "./style/embark.svg";
    document.getElementById("logo").style.background = "#2d2d2d";
  }
}

function openNav() {
  document.getElementById("sidenav").style.width = "250px";
  document.getElementById("main").style.marginLeft = "250px";
  document.getElementById("nav").style.visibility = "visible";
}

function closeNav() {
  document.getElementById("sidenav").style.width = "50px";
  document.getElementById("sidenav").scrollTop = 0;
  document.getElementById("main").style.marginLeft = "50px";
  document.getElementById("nav").style.visibility = "hidden";
}

function scrollDown() {
  window.scrollTo(0,document.body.scrollHeight);
}

function scrollUp() {
  window.scrollTo(0,0);
}

function buttonNav() {
  var button = document.getElementById("buttonSizer");
  if ( button.classList.contains('buttonOpen') ) {
    button.classList.remove('buttonOpen');
    button.classList.add('buttonClose');
    button.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="white" stroke-linecap="round" stroke-linejoin="round"><path d="M9.5 16.5v-4.978l-5-.022"/><path d="M18.5 2.5l-7 7"/><path d="M16.5 9.5l-5 .023V4.5"/><path d="M9.5 11.5l-7 7"/></g></svg>';
    openNav();
  } else if( button.classList.contains('buttonClose') ) {
    button.classList.remove('buttonClose');
    button.classList.add('buttonOpen');
    button.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" width="40" height="40" style="-ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg);" preserveAspectRatio="xMidYMid meet" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd" stroke="white" stroke-linecap="round" stroke-linejoin="round"><path d="M18.5 7.5v-5h-5"/><path d="M18.5 2.5l-6 5.929"/><path d="M7.5 18.5l-5 .023V13.5"/><path d="M8.5 12.5l-6 6"/></g></svg>';
    closeNav();
  };
}

// the following function is currently not used
// it is for future extensions
function overlay_output(link) {
  var rawfile = new XMLHttpRequest();
  rawfile.open('GET', link, false);
  rawfile.overrideMimeType("text");
  rawfile.onreadystatechange = function()
  {
    alert(rawfile.responseText);
    //console.log(rawfile.responseText);
  }
  rawfile.send(null);
}

document.onkeydown = function(e) {
    switch (e.keyCode) {
      case 37:
        document.getElementById("buttonForward").parentNode.click(); 
        break;
      case 39:
        document.getElementById("buttonBack").parentNode.click();       
        break;
    }
};
</script>

</body>
</html>
